home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 001 / bootxmdm.c64 < prev    next >
Text File  |  1985-06-03  |  4KB  |  163 lines

  1.  
  2. 
  3.  
  4. <S>TOP/<P>AUSE
  5.  
  6. FROM: Compuserve - C64 Programming
  7. BY: Chrisdos
  8. TITLE: Bootstrap XModem - BXD.TXT
  9. DATE: 2/11/85
  10. ----------------------------------
  11.  
  12.  Ya say you can't download because you
  13. only have a dumb terminal program.
  14.  Ya say if you could download, that you
  15. would download a new terminal program
  16. that could download. (Catch 22!)
  17.  
  18.  Well! I tell ya what I'm gonna do...
  19. Step right up and copy down the
  20. following SHORT program. Type it in and
  21. save it to disk.
  22.  
  23.  The program is a simple Bootstrap
  24. XMODEM Downloader, and if the wind is
  25. blowing right, will permit you to
  26. download from Compuserve's CBIG Sig,
  27. the full featured Xmodem terminal
  28. program > CBTERM/C64.
  29. Once you have CBTERM/C64, you can
  30. up or download anything to/from CIS and
  31. any Xmodem BBS systems.
  32.  
  33.  Step closer young man, and I'll tell
  34. you how it works.....
  35.  
  36. The program (which I will call BXD.BAS)
  37. is a short routine to only download
  38. a file in xmodem. It is used in
  39. conjunction with your present terminal
  40. program. You use your present dumb
  41. terminal program to go on line and
  42. connect with CIS. You then goto
  43. the CBIG Sig, (GO CBIG at the ! prompt)
  44. and into its DL2 data library. There
  45. you find the latest version of
  46. CBTERM/C64. You must get the .BIN
  47. version of CBTERM. (not the .IMG
  48. version)
  49.  
  50. You instruct CIS to Download the
  51. CBTERM program using XMODEM protocol.
  52. CIS will respond that it is begining
  53. the download. At this point you EXIT
  54. your terminal program (KEEP YOUR MODEM
  55. ON LINE! JUST EXIT YOUR TERMINAL
  56. PROGRAM.) and quickly load BXD.BAS.
  57. Then you just RUN it.
  58. BXD will then do an XMODEM download
  59. of the file and write it to disk. If
  60. all works well, in 15 mins. you should
  61. have a brand spanking new copy of
  62. CBTERM/C64 on your disk. (note: only
  63. run your dumb terminal program and
  64. BXD.BAS at 300 baud.)
  65. BXD.BAS does the following:
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  When RUN, will handshake to CIS to
  74. start the transfer. A disk file is
  75. opened and is called CBTERM into
  76. which the incomming data is written.
  77.  BXD then waits to recieve data blocks
  78. of 132 bytes long. Each block has
  79. a checksum that is matched and if
  80. found to be wrong, the block is rejectedand cis sends it again. (note: the
  81. first block is offen rejected on the
  82. first try by BXD, but gets through the
  83. second time around.)
  84. If the checksum is ok the block is
  85. written to the disk and the next
  86. block is recived. This continues
  87. untill the end of data marker is
  88. sent. BXD will say "DONE" and you should
  89. have a good copy of CBTERM/C64 now on
  90. your disk.
  91. Reset your computer and load CBTERM
  92. and use that as your new SMART terminal
  93. program.
  94.  
  95. Trying to keep BXD brief, many shortcutswere taken. There is no time out check
  96. or block number check as would be
  97. included in a full featured XMODEM
  98. program. If you suffer from noisey
  99. phone lines, you may be in trouble
  100. trying to use BXD. BXD expects to
  101. recieve 132 bytes in a block, if for
  102. some reason, a bute is dropped, BXD
  103. will sit in its loop and hang.
  104. Each byte that is recieve is marked
  105. by a "." displayed on the screen.
  106. and when a full block is recieve this
  107. is stated also. If you see BXD stop
  108. for longer than 60 seconds without
  109. recieveing any more bytes then you
  110. could try this: Press <STOP> to
  111. break the program. The enter: GOTO 50
  112.  
  113. This will reject the last block recievedand restart looking for the block.
  114. If you coninualy get CHECK SUM BAD
  115. errors, then log off and reload
  116. your dumb terminal program and
  117. try the process again.
  118. Don't forget to Verify the disk you
  119. were using as the opened file will
  120. not be good.
  121.  
  122. Here is the code for BXD.BAS:
  123.  
  124. 10 print"bootstrap xmodem downloader"
  125. 11 print"(c) 1985 by chrisdos"
  126. 20 open2,2,0,chr$(6):dim i%(132)
  127. 30 ack$=chr$(6):nak$=chr$(21):eot$=chr$(4)
  128. 40 open8,8,8,"cbterm,w,p"
  129. 50 forx=1to25:get#2,a$:nextx:print#2,nak$;
  130. 60 gosub100
  131. 70 ifck%<>i%(132)thenprint"check sum bad":goto50
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138. 80 forx=4to131:print#8,chr$(i%(x));:nextx:get#2,a$
  139. 90 b=b+1:print"block ok":print#2,ack$;:goto60
  140. 100 n=fre(0):forx=1to132
  141. 110 ifpeek(667)=peek(668)goto110
  142. 120 get#2,a$:i%(x)=asc(a$+chr$(0)):print".";
  143. 130 ifx=1anda$=eot$thenclose8:print"done":print#2,ack$:stop
  144. 140 nextx:print"have block "b
  145. 150 ck%=0:forx=1to131
  146. 160 ck%=(ck%+i%(x))and255:nextx:return
  147.  
  148. Enter it carefully, don't forget the ;'sand other easyly overlooked things.
  149. If all goes well, you will be able
  150. to download a very fine terminal programthat you can then use to up and down
  151. load just about anything else.
  152.  
  153.  
  154.  HAVE FUN !
  155. BXD.BAS (C) 1985 by Chrisdos
  156.  
  157. <CR>-Quit
  158. <M>-List files
  159. File # use to up and down
  160. load just about anything else.
  161.  
  162.  
  163.  HA